package jschool.modelos;

import javax.swing.table.AbstractTableModel;

import jschool.entidades.PersonalEscolar;
import jschool.manejadores.ManejadorDePersonalEscolar;

public class ModeloPersonalEscolar extends AbstractTableModel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String[] encabezado = null;
	private static ModeloPersonalEscolar instancia = null;
	private ManejadorDePersonalEscolar manejadorDePersonalEscolar = null;
	private PersonalEscolar personalEscolar = null;

	public ModeloPersonalEscolar() {
		encabezado = new String[] {};
		manejadorDePersonalEscolar = ManejadorDePersonalEscolar.getInstancia();
	}

	public static ModeloPersonalEscolar getInstancia() {
		if (instancia == null) {
			instancia = new ModeloPersonalEscolar();
		}
		return instancia;
	}

	public String getColumnName(int posicion) {
		return encabezado[posicion];
	}

	@Override
	public int getColumnCount() {

		return encabezado.length;
	}

	@Override
	public int getRowCount() {

		return manejadorDePersonalEscolar.getPersonalEscolar().size();
	}

	@Override
	public Object getValueAt(int fila, int col) {
		personalEscolar = manejadorDePersonalEscolar.getPersonalEscolar().get(
				fila);
		String retorno = "";
		switch (col) {
		case 0:
			retorno = String.valueOf(personalEscolar.getidEmpleado());

			break;
		case 1:
			retorno = personalEscolar.getUsuario();
			break;
		case 2:
			retorno = personalEscolar.getClave();
			break;

		case 3:
			retorno = personalEscolar.getNombre();
			break;
		case 4:
			retorno = personalEscolar.getApellido();
			break;
		case 5:
			retorno = personalEscolar.getDireccion();
			break;
		case 6:
			retorno = personalEscolar.getTelefono1();
			break;
		case 7:
			retorno = personalEscolar.getTelefono2();
			break;
		case 8:
			retorno = personalEscolar.getCelular();
			break;
		case 9:
			retorno = personalEscolar.getEmail();
			break;
		case 10:
			retorno = personalEscolar.getCedula();
			break;
		case 11:
			retorno = personalEscolar.getSexo();
			break;
		case 12:
			retorno = personalEscolar.getEstadoCivil();
			break;
		case 13:
			retorno = personalEscolar.getNacionalidad();
			break;
		case 14:
			retorno = personalEscolar.getFechaNacimiento();
			break;
		case 15:
			retorno = personalEscolar.getContrato();
			break;
		case 16:
			retorno = personalEscolar.getFechaIngreso();
			break;
		case 17:
			retorno = personalEscolar.getEstado();
			break;
		case 18:
			retorno = personalEscolar.getFechaBaja();
			break;
		case 19:
			retorno = personalEscolar.getIdDepartamento();
			break;
		case 20:
			retorno = personalEscolar.getDepartamento();
			break;
		case 21:
			retorno = personalEscolar.getPuesto();
			break;
		case 22:
			retorno = personalEscolar.getProfesion();
			break;

		case 23:
			retorno = personalEscolar.getNivelEstudio();
			break;

		case 24:
			retorno = personalEscolar.getEstudiosRealizados();
			break;

		case 25:
			retorno = personalEscolar.getExperienciasLaborales();
			break;
		case 26:
			retorno = personalEscolar.getTipoDePago();
			break;
		case 27:
			retorno = String.valueOf(personalEscolar.getSueldoBruto());
			break;
		case 28:
			retorno = String.valueOf(personalEscolar.getPagoPorHora());
			break;

		case 29:
			retorno = String.valueOf(personalEscolar.getCantidadHoras());
			break;
		case 30:
			retorno = personalEscolar.getNombreReferido();
			break;
		case 31:
			retorno = personalEscolar.getTelefonoReferido();
			break;
		case 32:
			retorno = personalEscolar.getObservaciones();
			break;
		case 33:
			retorno = personalEscolar.getImagen();
			break;

		}

		return retorno;
	}

	public void setValueAt(Object valor, int fila, int col) {
		personalEscolar = manejadorDePersonalEscolar.getPersonalEscolar().get(
				fila);

		switch (col) {

		case 1:
			personalEscolar.setUsuario((String) valor);
			break;

		case 2:
			personalEscolar.setClave((String) valor);
			break;
		case 3:
			personalEscolar.setNombre((String) valor);
			break;
		case 4:
			personalEscolar.setApellido((String) valor);
			break;
		case 5:
			personalEscolar.setDireccion((String) valor);
			break;
		case 6:
			personalEscolar.setTelefono1((String) valor);
			break;
		case 7:
			personalEscolar.setTelefono2((String) valor);
			break;
		case 8:
			personalEscolar.setCelular((String) valor);
			break;
		case 9:
			personalEscolar.setEmail((String) valor);
			break;
		case 10:
			personalEscolar.setCedula((String) valor);
			break;
		case 11:
			personalEscolar.setSexo((String) valor);
			break;
		case 12:
			personalEscolar.setEstadoCivil((String) valor);
			break;
		case 13:
			personalEscolar.setNacionalidad((String) valor);
			break;
		case 14:
			personalEscolar.setFechaNacimiento((String) valor);
			break;
		case 15:
			personalEscolar.setContrato((String) valor);
			break;
		case 16:
			personalEscolar.setFechaIngreso((String) valor);
			break;
		case 17:
			personalEscolar.setEstado((String) valor);
			break;
		case 18:
			personalEscolar.setFechaBaja((String) valor);
			break;
		case 19:
			personalEscolar.setIdDepartamento((String) valor);
			break;
		case 20:
			personalEscolar.setDepartamento((String) valor);
			break;
		case 21:
			personalEscolar.setPuesto((String) valor);
			break;
		case 22:
			personalEscolar.setProfesion((String) valor);
			break;
		case 23:
			personalEscolar.setNivelEstudio((String) valor);
			break;
		case 24:
			personalEscolar.setEstudiosRealizados((String) valor);
			break;
		case 25:
			personalEscolar.setExperienciasLaborales((String) valor);
			break;
		case 26:
			personalEscolar.setTipoDePago((String) valor);
			break;
		case 27:
			personalEscolar.setSueldoBruto((Integer) valor);
			break;

		case 28:
			personalEscolar.setPagoPorHora((Integer) valor);
			break;
		case 29:
			personalEscolar.setCantidadHoras((Integer) valor);
			break;
		case 30:
			personalEscolar.setNombreReferido((String) valor);
			break;
		case 31:
			personalEscolar.setTelefonoReferido((String) valor);
			break;
		case 32:
			personalEscolar.setObservaciones((String) valor);
			break;
		case 33:
			personalEscolar.setImagen((String) valor);
			break;
		}
		
		
		
		
		
		
		
		
		
		
		
		
		

	}
}
